In 3-dimensional rendering, geometry primitives (e.g., triangles) that make up polygon models may be projected onto a 2-dimensional surface (e.g., display screen area). The projected geometry primitives may be rasterized and rendered into a finished image. Screen Extension Report (SER) is a graphics functionality that uses the 2-dimensional coordinates of projected triangles to compute 2-dimensional bounding boxes for the rendered regions of these triangles. The computed bounding boxes of the triangles may be further used for triangle collision detection, triangle occlusion detection, and the elimination of redundant triangle rendering. The SER graphics functionality may be implemented by a specialized Graphics Processing Unit (GPU) that includes dedicated SER hardware, such as GPUs included in various gaming systems.
While SER is generally implemented using dedicated SER hardware on a GPU, it is also possible to implement the SER functionality without the dedicated SER hardware by performing multiple processing passes or shifting the computation to the central processing unit (CPU) during graphics rendering.
For example, in some multiple pass tile-based rendering processes, the 2-dimensional rendering target (e.g., display screen area) may be first subdivided into a set of rectangular tiles. In an initial processing pass over the rectangles, the GPU may perform the SER functionality by computing the bounding boxes for the triangles in each rectangular tile. In a second processing pass, the GPU may perform tile-based rendering. Tile-based rendering process may use screen extension information, that is, the bounding boxes computed during the initial processing pass to determine triangles that actually contribute to each rectangular tile (e.g., triangles visible on the surface of each rectangular tile). Accordingly, tile-based rendering may render only the contributing triangles rather than all of the triangles encompassed in each rectangle tile during the process.